package 左哥算法.ch12滑动窗口与双端队列;

import java.util.Scanner;

/**
 * 给你两个有序数组a,b，和一个目标值x
 * 请你在两个数组中各找一个数，使得两数之和等于x
 *
 * 思路：
 *  先找出数组a和b中第一个小于x的数。假设分别是a[i]和b[j]
 *  然后让a中的指针i从0开始，b中的指针j开始。如果a[i]+b[j]>x, 则j左移。否者i右移
 */
public class 数组元素的目标和 {
    public static int[] a;
    public static int[] b;
    static int x;
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        a=new int[sc.nextInt()];
        b=new int[sc.nextInt()];
        x=sc.nextInt();
        for (int i = 0; i < a.length; i++) {
            a[i]=sc.nextInt();
        }
        for (int i = 0; i < b.length; i++) {
            b[i]=sc.nextInt();
        }
        int ai = find(a);

        int i=0,j= find(b);
        while (i<=ai&&j>=0){
            if (a[i]+b[j]==x){
                break;
            }else if (a[i]+b[j]>x){
                j--;
            }else {
                i++;
            }
        }
        System.out.println(i+" "+j);
    }

    /**
     * 找到第一个<x的数
     */
    public static int find(int[] arr){
        int l=0,r=arr.length-1;
        while (l<=r){
            int mid=l+r>>1;
            if (arr[mid]<x){
                l=mid+1;
            }else {
                r=mid-1;
            }
        }
        return r;
    }
}
